// Clearfix
// -------------------------
.clearfix() {
  zoom: 1;
  &:before {
    content: "";
    display: block;
  }
  &:after {
    content: "";
    display: table;
    clear: both;
  }
}

// Force line breaks
// -------------------------
.word-break() {
  word-break: break-all;
  word-wrap: break-word;
  white-space: normal;
}

// No wrap
// -------------------------
.no-wrap() {
  word-break: normal;
  word-wrap: normal;
  white-space: nowrap;
}
// Text overflow with(...)
// -------------------------
// Requires inline-block or block for proper styling
.text-overflow() {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

.line-overflow(@line) {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: @line; /* number of lines to show */
  -webkit-box-orient: vertical;
}
// Controls the selection model of an element.
// -------------------------
.user-select(@arguments:none) {
  -webkit-user-select: @arguments;
  user-select: @arguments;
}

// placeholder color
.placeholder-color(@color:#ccc) {
  ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:@color;
  }
  :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: @color;
  }
  ::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:@color;
  }
  :-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:@color;
  }
}